Serial Input & Serial Output Sequential Logic Simulator
| Clock # | Serial In | Q3 | Q2 | Q1 | Q0 | Serial Out | Register State |
|---|
| Configuration | Data Entry | Data Exit | Clock Cycles for 4 Bits | Primary Use Cases |
|---|---|---|---|---|
| SISO (Serial-In Serial-Out) | Serial (One bit at a time via single pin) | Serial (One bit at a time via Q0) | 4 pulses to load, 4 pulses to read out (8 total) | Time delay lines, serial data transmission & signal buffering. |
| SIPO (Serial-In Parallel-Out) | Serial (One bit per clock edge) | Parallel (Simultaneous Q3..Q0 pins) | 4 clock cycles to load all 4 bits | Serial-to-parallel conversion, driving LED display buses. |
| PISO (Parallel-In Serial-Out) | Parallel (Loaded simultaneously via D3..D0) | Serial (Shifted out bit-by-bit) | 1 cycle load + 4 cycles serial shift out | Parallel-to-serial conversion, keyboard encoder interfaces. |
| PIPO (Parallel-In Parallel-Out) | Parallel (Instant load) | Parallel (Instant read) | 1 clock cycle for full load and read | Temporary CPU register storage, memory buffer registers. |
A Shift Register is a cascade of flip-flops connected in series, where data is moved (shifted) from one stage to another on every active clock transition. It can store binary numbers and manipulate serial/parallel data formats.
In a SISO Shift Register, data enters the first flip-flop serially (one bit at a time) on each clock edge and exits the final stage serially. To transmit an N-bit binary word, N clock pulses are required to load the word, and N clock pulses are required to shift it out completely.
For a 4-bit right-shift register using D Flip-Flops:
All flip-flops switch state simultaneously because they share the COMMON CLK signal (Synchronous Operation).
Edge-triggered D (Data) Flip-Flops sample their inputs precisely at the active clock edge (rising edge ↑). Because the output state change occurs only after the propagation delay (tpd), the previous state of Qk is captured correctly by Dk-1 before Qk updates. This prevents race conditions during serial shifting.